package com.b511.swpu.cementbackend.entity;

import javax.persistence.*;
import java.util.Objects;

@Entity
@Table(name = "BA_STRATUM", schema = "WANGBING", catalog = "")
public class BaStratumEntity {
    private long baStratumId;
    private String wellname;
    private long baWellId;
    private String stratumnumber;
    private String stratumname;
    private Long bottomdepth;
    private Long bottomvertical;
    private Long drillingthickness;
    private Long thickness;
    private String lithologydescription;
    private String oilgasdisplay;

    @Id
    @Column(name = "BA_STRATUM_ID")
    public long getBaStratumId() {
        return baStratumId;
    }

    public void setBaStratumId(long baStratumId) {
        this.baStratumId = baStratumId;
    }

    @Basic
    @Column(name = "WELLNAME")
    public String getWellname() {
        return wellname;
    }

    public void setWellname(String wellname) {
        this.wellname = wellname;
    }

    @Basic
    @Column(name = "BA_WELL_ID")
    public long getBaWellId() {
        return baWellId;
    }

    public void setBaWellId(long baWellId) {
        this.baWellId = baWellId;
    }

    @Basic
    @Column(name = "STRATUMNUMBER")
    public String getStratumnumber() {
        return stratumnumber;
    }

    public void setStratumnumber(String stratumnumber) {
        this.stratumnumber = stratumnumber;
    }

    @Basic
    @Column(name = "STRATUMNAME")
    public String getStratumname() {
        return stratumname;
    }

    public void setStratumname(String stratumname) {
        this.stratumname = stratumname;
    }

    @Basic
    @Column(name = "BOTTOMDEPTH")
    public Long getBottomdepth() {
        return bottomdepth;
    }

    public void setBottomdepth(Long bottomdepth) {
        this.bottomdepth = bottomdepth;
    }

    @Basic
    @Column(name = "BOTTOMVERTICAL")
    public Long getBottomvertical() {
        return bottomvertical;
    }

    public void setBottomvertical(Long bottomvertical) {
        this.bottomvertical = bottomvertical;
    }

    @Basic
    @Column(name = "DRILLINGTHICKNESS")
    public Long getDrillingthickness() {
        return drillingthickness;
    }

    public void setDrillingthickness(Long drillingthickness) {
        this.drillingthickness = drillingthickness;
    }

    @Basic
    @Column(name = "THICKNESS")
    public Long getThickness() {
        return thickness;
    }

    public void setThickness(Long thickness) {
        this.thickness = thickness;
    }

    @Basic
    @Column(name = "LITHOLOGYDESCRIPTION")
    public String getLithologydescription() {
        return lithologydescription;
    }

    public void setLithologydescription(String lithologydescription) {
        this.lithologydescription = lithologydescription;
    }

    @Basic
    @Column(name = "OILGASDISPLAY")
    public String getOilgasdisplay() {
        return oilgasdisplay;
    }

    public void setOilgasdisplay(String oilgasdisplay) {
        this.oilgasdisplay = oilgasdisplay;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        BaStratumEntity that = (BaStratumEntity) o;
        return baStratumId == that.baStratumId &&
                baWellId == that.baWellId &&
                Objects.equals(wellname, that.wellname) &&
                Objects.equals(stratumnumber, that.stratumnumber) &&
                Objects.equals(stratumname, that.stratumname) &&
                Objects.equals(bottomdepth, that.bottomdepth) &&
                Objects.equals(bottomvertical, that.bottomvertical) &&
                Objects.equals(drillingthickness, that.drillingthickness) &&
                Objects.equals(thickness, that.thickness) &&
                Objects.equals(lithologydescription, that.lithologydescription) &&
                Objects.equals(oilgasdisplay, that.oilgasdisplay);
    }

    @Override
    public int hashCode() {
        return Objects.hash(baStratumId, wellname, baWellId, stratumnumber, stratumname, bottomdepth, bottomvertical, drillingthickness, thickness, lithologydescription, oilgasdisplay);
    }
}
